#ifndef FHE_PYTHON_PYVARDESC_H
#define FHE_PYTHON_PYVARDESC_H

#include <fhe/core/IVarDesc.h>
#include <boost/python.hpp>

namespace fhe
{
  using namespace core;
  namespace python
  {
    class PyVarDesc : public IVarDesc
    {
    public:
      PyVarDesc( const std::string& name, boost::python::object get, boost::python::object set );
      
      std::string name() const;
      IVar::Ptr build( Node* node );
      
    private:
      std::string name_;
      boost::python::object get_;
      boost::python::object set_;
    };
  }
}

#endif
